/**
 * Copyright &copy; 2020 <a href="https://github.com/somowhere/exam-system">exam-system</a> All rights reserved.
 */
package com.shanhesoft.java.modules.exam.domain;

import lombok.*;
import com.baomidou.mybatisplus.annotation.*;
import com.shanhesoft.java.common.core.annotation.DictType;
import com.shanhesoft.java.common.persistence.domain.IdEntity;

import javax.validation.constraints.Size;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.*;

/**
 * 编程题用例Entity 编程题用例
 * @author admin
 * @version 2020-09-26 20:53:06
 */
@TableName(value = "oj_problem_checkpoints")
@Data @ToString @NoArgsConstructor @AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class OjProblemCheckpoints extends IdEntity<OjProblemCheckpoints> {

	private static final long serialVersionUID = 1L;
	/** F_PROBLEMID problem_id  :  试题编号 */
	public static final String F_PROBLEMID = "problemId";
	/** F_CHECKPOINTEXACTLYMATCH checkpoint_exactly_match  :  是否精确匹配测试点 */
	public static final String F_CHECKPOINTEXACTLYMATCH = "checkpointExactlyMatch";
	/** F_CHECKPOINTSCORE checkpoint_score  :  测试点分值 */
	public static final String F_CHECKPOINTSCORE = "checkpointScore";
	/** F_CHECKPOINTINPUT checkpoint_input  :  测试点的标准输入 */
	public static final String F_CHECKPOINTINPUT = "checkpointInput";
	/** F_CHECKPOINTOUTPUT checkpoint_output  :  测试点的标准输出 */
	public static final String F_CHECKPOINTOUTPUT = "checkpointOutput";


	/** problemId 试题编号 */@NotBlank @Size(max=50)
	@TableField("problem_id")
	private String problemId;
	/** checkpointExactlyMatch 是否精确匹配测试点 */@NotNull
	@TableField("checkpoint_exactly_match")
	private Integer checkpointExactlyMatch;
	/** checkpointScore 测试点分值 */@NotNull
	@TableField("checkpoint_score")
	private Long checkpointScore;
	/** checkpointInput 测试点的标准输入 */@NotBlank @Size(max=65535)
	@TableField("checkpoint_input")
	private String checkpointInput;
	/** checkpointOutput 测试点的标准输出 */@NotBlank @Size(max=65535)
	@TableField("checkpoint_output")
	private String checkpointOutput;


	@Override
    public boolean equals(Object o) {
        return super.equals(o);
    }
    @Override
    public int hashCode() {
        return super.hashCode();
    }
}
